package com.example.sams.service;

import com.example.sams.domain.po.Users;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.sams.domain.request.LoginRequest;
import com.example.sams.utils.ResultUtil;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author jinghong
 * @since 2025-11-04
 */
public interface IUsersService extends IService<Users> {
    /**
     * 登录验证业务
     * @param loginRequest 前端传来的登录参数（loginId+password）
     * @return Result：包含登录成功/失败信息，成功时返回token和角色
     */
    ResultUtil login(LoginRequest loginRequest);

    /**
     * 修改密码（支持所有角色）
     * @param userId 用户ID
     * @param oldPassword 旧密码
     * @param newPassword 新密码
     * @return Result
     */
    ResultUtil changePassword(String userId, String oldPassword, String newPassword);
}
